package com.itheima.fanxing;

import java.util.ArrayList;
/*
泛型通配符上限
 */
public class Demo09 {
    public static void main(String[] args) {
        ArrayList<Integer> list1 = new ArrayList<>();
        list1.add(123);
        list1.add(123);
        list1.add(123);
        list1.add(123);
        dance(list1);
        ArrayList<Double> list2 = new ArrayList<>();
        list2.add(123.1);
        list2.add(123.1);
        list2.add(123.1);
        list2.add(123.1);
        dance(list2);
        ArrayList<Number> list3 = new ArrayList<>();
        dance(list3);
        ArrayList<String> list4 = new ArrayList<>();
       // dance(list4); String 不是 Number 的子类
        ArrayList<Object> list5 = new ArrayList<>();
        //dance(list5); Object 是Number 的爸爸

    }

    /*
   这个?  随便但是必须是Number 或Number 的子类
   封 上限
    */
    public static void dance(ArrayList<? extends Number> list){
        int sum=0;
        for (Number number : list) {

            sum+=number.intValue();
            //System.out.println(number);
        }
        System.out.println(sum);
    }
}
